package com.jzo2o.customer.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.jzo2o.common.model.PageResult;
import com.jzo2o.customer.model.domain.AgencyCertificationAudit;
import com.jzo2o.customer.model.dto.request.AgencyCertificationAuditAddReqDTO;
import com.jzo2o.customer.model.dto.request.AgencyCertificationAuditPageQueryReqDTO;
import com.jzo2o.customer.model.dto.response.AgencyCertificationAuditResDTO;
import com.jzo2o.customer.model.dto.response.RejectReasonResDTO;

public interface IAgencyCertificationAuditService extends IService<AgencyCertificationAudit> {
    /**
     * 提交认证申请
     *
     * @param dto
     */
    void auditCertification(AgencyCertificationAuditAddReqDTO dto);
    /**
     * 查询最新的驳回原因
     *
     * @return
     */
    RejectReasonResDTO rejectReason();
    /**
     * 机构认证审核信息分页查询
     *
     * @param agencyCertificationAuditPageQueryReqDTO
     * @return
     */
    PageResult<AgencyCertificationAuditResDTO> pageQuery(AgencyCertificationAuditPageQueryReqDTO agencyCertificationAuditPageQueryReqDTO);
    /**
     * 审核机构认证信息
     *
     * @param id
     * @param cretificationStatus
     * @param rejectReason
     */
    void auditAgencyCertification(Long id, Integer cretificationStatus, String rejectReason);
}